The software which operates on a printer is frequently contained on a hardware device such as a ROM (read only memory), and is frequently referred to using the term “firmware.” Where a software (i.e. firmware) upgrade is performed, considerable expense in incurred in burning the software into a plurality of ROMs. The exact number of printers to be upgraded may not be known. This may result in the added expense of burning too many ROMs, or may result in the added expense of burning the ROMs in multiple batches. Additionally, in some applications different ROMs must be made for different languages, adding costs due to logistical issues. Moreover, once the ROMs are burned, they are often distributed throughout the region within which the printer has been sold and installed individually in each printer.
Improved ways are needed to provide software upgrades to a printer. Improved ways are also needed to extend the resources of a printer.